package com.gccloud.design.dto;

import com.alibaba.fastjson.annotation.JSONField;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 实现功能【环节参与者配置查询DTO】
 *
 * @author hu.hongdou
 * @date 2022/2/21 12:14
 */
@Data
public class LinkParticipantConfigDto implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("环节定义ID")
    private String activityRepoId;

    @ApiModelProperty("字典PARTICIPANT_TYPE：人员、角色、机构")
    private String participantType;

    @ApiModelProperty("人员ID、角色ID等参与人标识")
    private String participantId;

    @ApiModelProperty("参与人名称")
    private String participantName;

    @ApiModelProperty("参与人机构标识")
    private Long participantOrgId;

    @ApiModelProperty("参与人机构名称")
    private String participantOrgName;


    @ApiModelProperty("是否通知  0：不通知；1：通知")
    private String isNotice;

    @ApiModelProperty("业务字典NOTICE_TYPE：通知类型。多种通知类型，用英文逗号隔开")
    private String[] noticeType;

    @ApiModelProperty("通知类型")
    private String noticeTypeStr;

    @ApiModelProperty("业务字典，FINISH_RULE SINGLE单人完成，ALL全部完成")
    private String finishRule;

    @ApiModelProperty("角色编码")
    private String roleCode;

    @ApiModelProperty("区域标识")
    private long areaId;

    @ApiModelProperty("参与人配置ID")
    private Integer participantConfId;

    @ApiModelProperty("流程定义ID")
    private String processDefId;

    @ApiModelProperty("参与人机构序列")
    private String participantOrgIdSeq;

    @ApiModelProperty("创建时间")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    @ApiModelProperty("删除标识  0:删除  1:有效")
    private Integer delFlag;

    @ApiModelProperty("机构名称序列")
    private String orgNameSeq;

    @ApiModelProperty("分库字段 默认:0")
    private Integer shardingId;

}
